<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.w3.org/1999/xhtml">
<head th:replace="admin/_fragments :: head(~{::title})">
    <meta charset="UTF-8">
    <!--调整缩放，方便移动端-->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>分类新增</title>

    <!--semantic ui 的 css-->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.css">

    <!--自己定义的 css-->
    <link rel="stylesheet" href="../../static/css/me.css">

    <!--editormd 的 css-->
    <link rel="stylesheet" href="../../static/lib/editormd/css/editormd.min.css">

</head>
<body>
    <!--导航-->
    <!--
        inverted : 颜色反转，加上就是黑色
        attached : 贴附，加上导航条就没有圆角
        m-padded-tb-mini : 自定义的 css ，表示导航栏菜单的上下内间距调整小一点
        segment : 一条类似导航栏的带子
    -->
    <nav th:replace="admin/_fragments :: menu(2)" class="ui inverted segment attached m-padded-tb-mini m-shadow-small">
        <!--放在 container 里可以让四周都留点空隙-->
        <div class="ui container">
            <!--
                secondary : 相当于一个背景色的样式
                stackable : 表示可堆叠的，在移动端时，里面的元素会有序堆在一起，一般与 menu ，grid 等连用
            -->
            <div class="ui inverted secondary stackable menu">
                <!--teal : 相当于一个字体颜色，绿色-->
                <h2 class="ui teal header item">管理后台</h2>
                <!--在 ws 中可以快速写标签，例如： i.home.icon + tab键 = <i class="home icon"></i>-->
                <!--
                    item : 与上面的 menu 相对应
                    m-mobile-hide : 自定义的 css ，在移动端时隐藏
                    m-item : 没有任何样式作用，仅用于 js 作为选择器
                -->
                <a href="#" class="active m-item item m-mobile-hide"><i class="home icon"></i>博客</a>
                <a href="#" class="m-item item m-mobile-hide"><i class="idea icon"></i>分类</a>
                <a href="#" class="m-item item m-mobile-hide"><i class="tags icon"></i>标签</a>

                <div class="right m-item item m-mobile-hide menu">
                    <!--拥有下拉菜单的头像框-->
                    <!--
                        dropdown item : 代表一个下拉菜单
                    -->
                    <div class="ui dropdown item">
                        <div class="text">
                            <img class="ui avatar image" src="https://picsum.photos/id/1/100/100">名字
                        </div>
                        <i class="dropdown icon"></i>
                        <!--menu 中包含下拉菜单项-->
                        <div class="menu">
                            <a href="#" class="item">注销</a>
                        </div>
                    </div>
                </div>

            </div>
        </div>

        <!--用于移动端折叠导航栏的按钮-->
        <!--
            m-right-top : 自定义的 css，将元素至于右上角
            m-mobile-show : 自定义的 css ，在移动端时显示，在通常情况下隐藏
            menu toggle : 没有任何样式作用，仅用于 js 作为选择器
        -->
        <a href="#" class="ui black menu toggle icon button m-right-top m-mobile-show">
            <i class="sidebar icon"></i>
        </a>

    </nav>
    <div class="ui attached pointing menu">
        <div class="ui container">
            <div class="right menu">
                <a href="#" th:href="@{/admin/types/input}" class="teal active item">新增</a>
                <a href="#" th:href="@{/admin/types}" class="item">列表</a>
            </div>
        </div>
    </div>

    <!--中间内容-->
    <!--
        m-container : 自定义css，使其比原定的 container 窄
    -->
    <div class="m-container-small m-padded-tb-big">
        <div class="ui container">
            <!--
                th:object="${type}" : 从后端拿到一个 type 对象
            -->
            <form action="#" method="post" th:object="${type}" th:action="*{id}==null ? @{/admin/types} : @{/admin/types/{id}(id=*{id})}" class="ui form">
                <!--隐藏域-->
                <input type="hidden" name="id" th:value="*{id}">
                <!--分类名称-->
                <div class="required field">
                    <div class="ui left labeled input">
                        <label class="ui teal basic label">名称</label>
                        <!--
                            *{name} : 获取 type 中的 name 属性，*{} 就相当于获取上面 object 中的某个属性
                        -->
                        <input type="text" name="name" placeholder="分类名称" th:value="*{name}">
                    </div>

                </div>

                <!--错误信息显示容器-->
                <!--
                    error message : 代表一个错误信息显示容器
                -->
                <div class="ui error message"></div>

                <!--在 html 没有，在 thymeleaf 有用-->
                <!--
                    ${#fields.hasErrors('name')} : 要执行这条语句，上面就需要一个 name 值，所以上面通过 th:object="${type}" 获取一个
                    type 对象，然后再通过 th:value="*{name}" 获取到 name 值
                    th:errors="*{name}" ： 显示 name 的错误信息
                -->
                <!--/*/
                <div class="ui negative message" th:if="${#fields.hasErrors('name')}">
                    <i class="close icon"></i>
                    <div class="header">验证失败</div>
                    <p th:errors="*{name}">提交信息不符合规则</p>
                </div>
                /*/-->


                <!--确认按钮栏-->
                <div class="ui right aligned container">
                    <!--
                        window.history.go(-1) : 返回上一页，从哪个页面来，回那个页面去
                    -->
                    <button type="button" class="ui button" onclick="window.history.go(-1)">返回</button>
                    <button class="ui teal submit button">提交</button>
                </div>
            </form>
        </div>


    </div>

    <br>
    <br>

    <!--底部 footer-->
    <!--
        vertical : 垂直，加上没有圆角
        m-padded-tb-massive : 自定义 css，使整个 footer 的内间距变大
    -->
    <footer th:replace="admin/_fragments :: footer" class="ui inverted vertical segment m-padded-tb-massive">
        <!--
            center aligned : 里面所有元素居中
        -->
        <div class="ui center aligned container">
            <!--
                grid : 类似于 bootstrap 中的 row，bootstrap 中 把一行分成 12 列，这里分成 16 列
                divided : 每列之间加上分割线
                inverted : 因为背景是反转色，所以这里也反转
            -->
            <div class="ui inverted divided stackable grid">
                <!--二维码图片-->
                <!--
                    wide : 宽度填满
                -->
                <div class="three wide column">
                    <!--把图片放在 list 里，使图片能居中-->
                    <div class="ui inverted link list">
                        <div class="item">
                            <!--
                                rounded : 圆角的
                            -->
                            <img src="../../static/images/QRcode.png" class="ui rounded image" style="width: 110px">
                        </div>
                    </div>
                </div>
                <!---->
                <div class="three wide column">
                    <h4 class="ui inverted header m-text-thin m-text-spaced">最新博客</h4>
                    <!--
                        list : 里面的元素呈列表样式
                    -->
                    <div class="ui inverted link list">
                        <!--
                            item : 与上面的 list 相对应
                        -->
                        <a href="#" class="item">用户故事</a>
                        <a href="#" class="item">用户故事</a>
                        <a href="#" class="item">用户故事</a>
                    </div>
                </div>
                <div class="three wide column">
                    <h4 class="ui inverted header m-text-thin m-text-spaced">联系我</h4>
                    <!--
                        list : 里面的元素呈列表样式
                    -->
                    <div class="ui inverted link list">
                        <!--
                            item : 与上面的 list 相对应
                        -->
                        <a href="#" class="item">Email: dfasdog@qq.com</a>
                        <a href="#" class="item">QQ: 13355767653</a>
                    </div>
                </div>
                <div class="seven wide column">
                    <!--加上自定义样式-->
                    <h4 class="ui inverted header m-text-thin m-text-spaced">Blog</h4>
                    <!--加上自定义样式-->
                    <p class="m-text-thin m-text-spaced m-opacity-mini">一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话一段话</p>
                </div>
            </div>
            <!--分割线-->
            <!--
                divider : 与上面的 divided 区别开
            -->
            <div class="ui inverted section divider"></div>
            <!--加上自定义样式-->
            <p class="m-text-thin m-text-spaced m-opacity-tiny">版权内容版权内容版权内容版权内容版权内容</p>
        </div>
    </footer>

    <!--/*/<th:block th:replace="admin/_fragments :: script">/*/-->
    <!--jquery 的 js-->
    <script src="https://cdn.jsdelivr.net/npm/jquery@3.2/dist/jquery.min.js"></script>

    <!--semantic ui 的 js-->
    <script src="https://cdn.jsdelivr.net/npm/semantic-ui@2.4.2/dist/semantic.min.js"></script>
    <!--/*/</th:block>/*/-->

<!--自定义的 js-->
<script>

    // 顶部导航栏折叠
    $('.menu.toggle').click(function () {
        // 如果类中有 m-mobile-hide ，则去掉，否则加上
        $('.m-item').toggleClass('m-mobile-hide');
    });

    $('.ui.dropdown').dropdown({
        // on: 'hover'     // 鼠标悬浮就弹出菜单
    });

    // 表单验证，详看官方手册
    $('.ui.form').form({
        fields: {
            title: {
                identifier: 'name',
                rules: [{
                    type: 'empty',
                    prompt: '请输入分类名称'
                }]
            }
        }
    });

    // 消息提示关闭初始化
    $('.message .close').on('click', function () {  // 当点击关闭按钮时
        $(this).closest('.message')     // 关闭
            .transition('fade');        // 指定动画
    })

</script>
</body>
</html>